#pragma once

namespace Renderer
{

	class Graphics;

	class Font
	{
	private:
		ID3DXFont * font;
		ID3DXSprite * sprite;

	public:
		Font();
		~Font();

		ID3DXFont* GetFontCOM();

		bool Create(Graphics* graphics, ID3DXSprite * spriteBatch, char* name, long size = 16, bool bold = FALSE, bool italic = FALSE);
		void Free();
		void OnResetDevice();
		void OnLostDevice();

		void Print(char* text, long posX, long posY, long width = 0, long height = 0, D3DCOLOR color = 0xFFFFFFFF, DWORD format = 0);
	};

}